3
תגובות
אני צריך ליצור משחק בפלאש שאחר כך מעביר את הניקוד לקובץ PHP, שהוא יעדכן הכל במסד (יוסיף מטבעות לשחקן).
הבעיה היא שברגע שאני עושה את זה המשתמש ישר יכול לפתוח את הקובץ והמטבעות ימשיכו לעלות, יש דרך לעשות את זה בדרך אחרת?

3 תשובות

avatar ענה Cayce ב 27 לאוגוסט 2014 #

אתה צריך שהסקריפט PHP יבדיל בין משחק הפלאש שלך למשתמש רגיל שגילה את הכתובת של הסקריפט ונכנס ידנית.

אתה יכול לעשות סיסמה שכל הזמן משתנה(לעביר אותה לסקריפט דרך method GET). הסיסמה יכולה להיות לדוגמה כזאת:
MD5(user_id + secret_word + num_game)
כאשר num_game זה מספר המשחק של המשתמש. העיקר שהמשתמש לא ידע איך הסיסמה מורכבת, והיא כל הזמן תשתנה.

אלה אם כן הוא יעשה Decoding למשחק פלאש ויראה איך מורכבת הסיסמה. האמת שאין לי מושג אם זה אפשרי בכלל לעשות דקודינג לפלאש ברמה כזאת.

avatar ענה yossi787 ב 27 לאוגוסט 2014 #

אני כמעט בטוח שאפשר לעשות דקודינג וזו בעצם הבעיה הראשית, לא משנה מה הסיסמה- המשתמש יכול לראות את המקור של הקובץ.

avatar ענה Splash ב 28 לאוגוסט 2014 #

אתה יכול לעשות שיהיו שני חישובים,אחד מבחינת הצד שרת ואחד מבחינת הצד לקוח.
בתחילת הטעינה של הפלאש ה php שומר את הנתונים הרלוונטים לחישוב ושולח אותם לפלאש.
כל פעם שמשתמש עושה פעולה הוא מצביע לך מה הוא עשה.נלך נגיד על הקנדי קראש בפייסבוק ,אז הוא ישלח ל
candy.php את הנתונים
from: 10,10
ו
to 10,11

עכשיו מבחינתך בשרת אתה יודע אם הפעולה הזאת תקנית או לא
לעומת זאת בצד לקוח הוא יכול לגרום לפלאש שלך לחשוב שהפעולה תקנית על אף שהיא לא [אין רצף למשל]

מאחר וטעינה כל פעם של החישוב ב php לוקחת זמן ואתה רוצה שיהיה חוויה כל שהיא למשתמש אתה רק בסיום הסקריפט בודק אם הנתונים שהלקוח שלח לך [הניקוד] תואמים לנתונים שיש לך בצד שרת ,במידה ולא -> המשתמש ניסה לרמות אותך [או שלא חישבת כמו שצריך את הנתונים]

אפשר כמובן לשחק עם הרעיון ובמקום שהוא ישלח כל פעולה בנפרד הוא ישלח כל X פעולות ,או אם לא מדובר בהרבה פעולות אז רק בסיום הוא ישלח את הפעולות שהוא ביצע והניקוד שהוא קיבל